1. Field of the Invention
The present invention relates generally to data recovery in computer systems, and in particular, to a computer implemented method, data processing system, and computer program product for maximizing the amount of data protected in a Redundant Array of Independent Disks (RAID) storage system.
2. Description of the Related Art
Hard disk drives (“hard drives”) are the main data storage devices for most computers or processors. Typical hard drives contain a number of hard disk platters (“disks”) coated with magnetic material for storing data in magnetized form. The disks are affixed to a spindle that spins them in unison at a constant rate. An actuator arm moves one or more read/write heads radially across the disks to retrieve or store the magnetized data. The hard drive's components (disks, spindle, actuator arm, read/write heads, associated motors and electronics, etc.) are enclosed within a head disk assembly (HDA).
The HDA protects the hard drive's components from contamination by dust, condensation, and other sources. Contamination of a hard drive's disk or read/write head can result in disk failure, head crash and/or an unrecoverable loss of data. Also, data loss can be caused by other hard drive problems, such as electronic malfunctions, physical shocks, worn out components, improperly manufactured disks, etc.
One hardware approach to solving the problem of increased hard errors in hard drives is to employ a Direct Access Storage Device (DASD). One example of a DASD is a Redundant Array of Independent Disks (RAID). The RAID approach connects a plurality of hard drives together and treats them as a single, logical unit. Consequently, a computer sees the plurality of drives as one, large hard drive that can be formatted and partitioned similar to that of a smaller, individual drive. RAID implementations enhance the reliability/integrity of data storage through the writing of data “stripes” across a given number of physical disks in the RAID set, and the appropriate storing of redundant information with respect to the striped data. The redundant information enables recovery of data lost when a storage device fails.
The redundancy thus provided by the multiple hard drives of the RAID approach enhances the recovery of lost data due to hard errors, and also increases the performance of the computer system involved. Currently, however, the storage space of each disk available to be configured in a RAID is limited to the storage space size of the smallest disk in the array. For example, if two 35 GB disks are used to build a RAID together with a 70 GB disk, each disk will contribute 35 GB to the array for a total storage space of 105 GB for the RAID, while the remaining 35 GB of the larger disk remain unprotected. Thus, the amount of data protectable in existing RAID systems is restricted by the capacity of the smallest drive in the RAID set.
Therefore, it would be advantageous to have a method and system for increasing the amount of data protected in a RAID storage system.